/**
 * @函数功能:分页基础数据
 * @参数输入:
 * @函数返回:
 */
export const paginationMixin = {
  data() {
    return {
      page: 1, //初始化显示第一页数据
      pageSize: 10, //默认显示页面数量
      pageSizes: [10, 20, 50, 100], //页面数据数组，展示的选择每页显示个数的选项
      totalSize: 0, //总条数
      currentPage: 1,
      layout: "total ,sizes,prev,pager,next,jumper",
    };
  },
  methods: {
    /**
     * @函数功能:currentPage 改变时会触发
     * @参数输入:val:当前页
     * @函数返回:
     */
    handleCurrentChange(val) {
      this.page = val;
    },
    /**
     * @函数功能:pageSize 改变时会触发 (选择每页展示多少条触发)
     * @参数输入:val:每页条数
     * @函数返回:
     */
    handleSizeChange(val) {
      this.pageSize = val;
    },
    /**
     * @函数功能:根据分页 对表格数据进行截取
     * @参数输入:data:Array 表格的数据
     * @函数返回:
     */
    getTableData(data) {
      let tableData = data ? data : this.tableData || [];
      this.totalSize = tableData.length;
      return tableData.slice((this.currentPage - 1) * this.pageSize, this.currentPage * this.pageSize);
    },
    //解决点击搜索或者重置的时候 改成第一页
    paginationReset() {
      this.page = 1;
      this.currentPage = 1;
    },
  },
};
